功能
Promise.all(iterable) 返回一个新的Promise实例。此实例在iterable
参数内所有的promise都fullfilled
或者参数种不包含promise
时,状态变成fullfilled
;如果参数中promise有一个失败rejected
,此实例回调失败,失败原因是第一个失败promise的返回结果。
例子
|
|
p 的状态由p1,p2,p3决定:
- 只有p1,p2,p3的状态都变成了fullfilled, p 的状态才会变成fullfilled, 此时p1,p2,p3的返回值组成一个数组,传递给p的回调函数。
- 只要其中有一个的状态变成了rejected,p的状态就会变成rejected,此时第一个被rejected的实例的返回值就会传入p的回调函数。
实现:
|
|